(function ($) {
    $.fn.extend({
        "chocolate": function (options) {
            var opts = $.extend({}, defaluts, options);
			var cols = opts.cols.split("/");
			var margin = opts.margin;
			var height = opts.height;
			//块元素的父元素的宽度等级
			var p_wrap_width = $(this).width();
			function wrap_w_lv(){
				if(p_wrap_width >= 1000){
					return 1000
				}else if(p_wrap_width < 1000 && p_wrap_width >= 640){
					return 640
				}else if (p_wrap_width < 640 && p_wrap_width >= 480) {
					return 480
				}else if (p_wrap_width < 480 && p_wrap_width >= 320) {
					return 320;
				}else if (p_wrap_width < 320) {
					return 0
				}
			};
			function item_w(i){
				var iw;
				var cols_i = parseInt(cols[i])
				if(cols_i){
					iw = Math.floor((p_wrap_width-(cols_i-1)*margin)/cols_i);
				}else{
					iw = Math.floor(p_wrap_width - 2*margin)
				};
				return iw;
			};
			var item_width;
			var cols_c;
			
			switch(wrap_w_lv()){
				case 1000:
				item_width = item_w(0);
				cols_c = 0;
				break;
				case 640:
				item_width = item_w(1);
				cols_c = 1
				break;
				case 480:
				item_width = item_w(2);
				cols_c = 2;
				break;
				case 320:
				item_width = item_w(3);
				cols_c = 4;
				break;
				case 0 :
				item_width = item_w(4);
				cols_c = 4;
				break;
			};
			var item = $(this).find(".ch_item");
			// $(this).css({
				// "padding-bottom": margin+"px"
			// });
			if($(this).is("ul") && !$(this).children().last().hasClass("clear")){
				$(this).append("<li class='clear'></li>")
			}else if ($(this).is("div") && !$(this).children().last().hasClass("clear")){
				$(this).append("<div class='clear'></div>")
			};
			item.css({
				"margin": margin+"px "+margin+"px 0 0",
				"float": "left",
				"height": height,
				"width": item_width + "px",
			});
			var cols_current
			if(cols[cols_c]){
			cols_current = cols[cols_c];
			}else{
				cols_current = 1;
			};
			
			$(this).children(".ch_item:nth-child("+cols_current+"n)").css({
				"margin-right": 0,
				"width": (p_wrap_width - (cols_current-1) *(item_width+margin))+"px"
			});
		}
    });
	var defaluts = {
		cols: "5/4/3/2/1",
		margin: 10,
		height: "auto"
	};
})(window.jQuery);